SpringCloud 项目基础工程搭建 【SpringCloud系列1】

您所在的位置:网站首页 dependencymanagement scope SpringCloud 项目基础工程搭建 【SpringCloud系列1】

SpringCloud 项目基础工程搭建 【SpringCloud系列1】

#SpringCloud 项目基础工程搭建 【SpringCloud系列1】| 来源: 网络整理| 查看: 265

SpringCloud 大型系列课程正在制作中,欢迎大家关注与提意见。 程序员每天的CV 与 板砖,也要知其所以然,本系列课程可以帮助初学者学习 SpringBooot 项目开发 与 SpringCloud 微服务系列项目开发

在这里插入图片描述

在这里插入图片描述

1 Idea 创建 Maven 项目

在这里插入图片描述

创建好后,我们反多余的文件夹删除,留下空的 maven 工程 在这里插入图片描述 对应的pom.xml 中只留下基础的配置

4.0.0 com.biglead biglead-api 1.0-SNAPSHOT pom org.springframework.boot spring-boot-starter-parent 2.4.4 UTF-8 UTF-8 17 17 17 复制代码 2 SpringCloud 版本

Spring Cloud 官方

在这里插入图片描述

GA:General Availability,正式发布的版本,官方推荐使用此版本。在国外都是用GA来说明release版本的。 PRE::预览版,内部测试版,主要是给开发人员和测试人员测试和找BUG用的,不建议使用。 SNAPSHOT:快照版,可以稳定使用,且仍在继续改进版本。 SR+数字:该种形式也是正式发布的稳定版本,表示在是大版本的第几个正式版本。 在这里插入图片描述

本系列使用 2020.0.2 版本 。 导入基本使用的依赖如下:

4.0.0 com.biglead biglead-api 1.0-SNAPSHOT pom org.springframework.boot spring-boot-starter-parent 2.4.4 UTF-8 UTF-8 17 17 17 2.4.4 2020.0.2 2020.0.RC1 5.1.47 2.1.1 2.4.4 7.12.1 org.springframework.cloud spring-cloud-dependencies ${spring-cloud.version} pom import org.springframework.boot spring-boot-starter-web ${spring-boot.version} mysql mysql-connector-java ${mysql.version} org.mybatis.spring.boot mybatis-spring-boot-starter ${mybatis.version} org.projectlombok lombok 复制代码 2.1 dependencyManagement 标签

在父级的 pom 中的 dependencyManagement 标签 ,是对所依赖jar包进行声明依赖,也就是这里的声明依赖的版本,继承该父项目的子项目,不会直接引入dependencyManagement管理的jar包,在子项目中使用到对应的依赖时,可不写版本号。

3 子项目 UserService 服务创建

在这里插入图片描述 比如我这里创建的服务叫 user-service 在这里插入图片描述 点击Next创建完成后,在父工程的 pom.xml 中添加模块依赖

user-service 复制代码

在这里插入图片描述 然后整理一下刚刚创建的user-service服务的 pom文件如下:

4.0.0 biglead-api com.biglead 1.0-SNAPSHOT user-service 0.0.1-SNAPSHOT user-service user-service 17 org.springframework.boot spring-boot-starter-web mysql mysql-connector-java org.mybatis.spring.boot mybatis-spring-boot-starter com.baomidou mybatis-plus-boot-starter org.projectlombok lombok true org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-maven-plugin org.projectlombok lombok ![在这里插入图片描述](https://img-blog.csdnimg.cn/020b34be4b004aeaa6765dfba73bdc88.png) 复制代码

然后 clean 一下项目,重新加载一下 pom 依赖

在这里插入图片描述 然后修改 配置文件 application.properties 为 application.yml ,并添加基础的配置如下:

server: port: 8001 spring: datasource: url: jdbc:mysql://mysql:3306/spring_cloud?useUnicode=true&zeroDateTimeBehavior=convertToNull&autoReconnect=true&characterEncoding=utf-8&useSSL=false username: testadmin password: qwert.12345 driver-class-name: com.mysql.jdbc.Driver application: #对应pom中的配置的name name: '@project.name@' mybatis: configuration: log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl #mybatis mybatis-plus: mapper-locations: classpath*:**/sqlmap/*.xml #实体扫描,多个package用逗号或者分号分隔 typeAliasesPackage: com.biglead.userservice.pojo configuration: map-underscore-to-camel-case: true #缓存 cache-enabled: false call-setters-on-nulls: true #配置日志 log-impl:日志实现 log-impl : org.apache.ibatis.logging.stdout.StdOutImpl 复制代码

然后测试启动项目 在这里插入图片描述

4 用户信息查询

在这里使用 mybatis-plus 来查询数据库的用户信息,基本的集成过程可以查看这里

SpringBoot MyBatis-Plus 集成 【SpringBoot系列5】 数据库中对应的用户数据如下 在这里插入图片描述

UserController 中的接口信息配置

import com.biglead.userservice.pojo.UserInfo; import com.biglead.userservice.service.UserService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @Slf4j @RestController @RequestMapping("/user") public class UserController { @Resource private UserService userService; @Value("${server.port}") private String serverPort; /** * 路径: /user/110 * * @param id 用户id * @return 用户 */ @GetMapping(value = "/{id}") public UserInfo queryById(@PathVariable("id") Long id) { log.info("查询用户信息 port {}",serverPort); return userService.queryById(id); } } 复制代码

UserService.java 的定义

import com.baomidou.mybatisplus.extension.service.IService; import com.biglead.userservice.pojo.UserInfo; public interface UserService extends IService { /**查询用户详情*/ UserInfo queryById(Long id); } 复制代码

UserServiceImpl.java 的定义

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.biglead.userservice.mapper.UserMapper; import com.biglead.userservice.pojo.UserInfo; import com.biglead.userservice.service.UserService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @Service @Slf4j public class UserServiceImpl extends ServiceImpl implements UserService { /** * 查询用户详情 * * @param id */ @Override public UserInfo queryById(Long id) { return this.getById(id); } } 复制代码

UserMapper.java 的定义

import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.biglead.userservice.pojo.UserInfo; import org.apache.ibatis.annotations.Mapper; @Mapper public interface UserMapper extends BaseMapper { } 复制代码

然后启动项目,大家可以查看一下项目的目录结构如下

在这里插入图片描述 然后在 postman 中访问 http://localhost:8001/user/1\ 在这里插入图片描述 然后也可以看到控制台日志如下: 在这里插入图片描述

5 子项目 order-service 创建

重复本文章 第三小节的创建 SpringBoot的过程,创建一个order-service服务,然后在 父项目中添加 order-service 的配置 在这里插入图片描述 然后 maven 重新 reload 一下,重复本文章 第四小节的过程 ,写一个订单服务的基本的查询,然后启动 订单服务如下 :

在这里插入图片描述 订单详情的表数据如下 在这里插入图片描述

然后 访问接口 http://{{host}}:9001/order/109 查询订单的数据如下 在这里插入图片描述

SpringCloud 微服务基本工程搭建完成 本文章是系列文章,代码过多,可以查看源码如下: gitee.com/android.lon…

有兴趣可以关注一下 公众号 biglead



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3